package Data::Conveyor::Value::Ticket::Status_TEST;

# $Id: Status_TEST.pm 12315 2006-12-12 14:16:26Z gr $

use strict;
use warnings;


our $VERSION = '0.02';


use base 'Data::Conveyor::Test';


use constant PLAN => 14;


sub run {
    my $self = shift;
    $self->SUPER::run(@_);

    # Note that there are no tests for adding TS_HOLD and TS_PENDING; that's
    # undefined so far because we don't really use TS_HOLD anymore.

    $self->apply_status_ok('TS_RUNNING' , 'TS_RUNNING' , 'TS_RUNNING' , 1);
    $self->apply_status_ok('TS_RUNNING' , 'TS_HOLD'    , 'TS_HOLD'    , 1);
    $self->apply_status_ok('TS_RUNNING' , 'TS_PENDING' , 'TS_PENDING' , 1);
    $self->apply_status_ok('TS_RUNNING' , 'TS_ERROR'   , 'TS_ERROR'   , 1);

    $self->apply_status_ok('TS_HOLD'    , 'TS_RUNNING' , 'TS_HOLD'    , 1);
    $self->apply_status_ok('TS_HOLD'    , 'TS_HOLD'    , 'TS_HOLD'    , 1);
    $self->apply_status_ok('TS_HOLD'    , 'TS_ERROR'   , 'TS_ERROR'   , 1);

    $self->apply_status_ok('TS_PENDING' , 'TS_RUNNING' , 'TS_PENDING' , 1);
    $self->apply_status_ok('TS_PENDING' , 'TS_PENDING' , 'TS_PENDING' , 1);
    $self->apply_status_ok('TS_PENDING' , 'TS_ERROR'   , 'TS_ERROR'   , 1);

    $self->apply_status_ok('TS_ERROR'   , 'TS_RUNNING' , 'TS_ERROR'   , 1);
    $self->apply_status_ok('TS_ERROR'   , 'TS_HOLD'    , 'TS_ERROR'   , 1);
    $self->apply_status_ok('TS_ERROR'   , 'TS_PENDING' , 'TS_ERROR'   , 1);
    $self->apply_status_ok('TS_ERROR'   , 'TS_ERROR'   , 'TS_ERROR'   , 1);


}


1;


__END__

{% USE p = PodGenerated %}

=head1 NAME

{% p.package %} - stage-based conveyor-belt-like ticket handling system

=head1 SYNOPSIS

    {% p.package %}->new;

=head1 DESCRIPTION

None yet. This is an early release; fully functional, but undocumented. The
next release will have more documentation.

=head1 METHODS

=over 4

{% p.write_methods %}

=back

{% p.write_inheritance %}

{% PROCESS standard_pod %}

=cut

